home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2002 #11 / Amiga Plus CD - 2002 - No. 11.iso / amigaoscd / amigapluscd / AP-Website / forum / forum2 / calender.php next >
PHP Script  |  2001-12-02  |  9KB  |  222 lines

  1. <?php
  2. require ("_functions.php");
  3. require("_header.php");
  4. require("_board_jump.php");
  5.  
  6. function daynumber($time) {
  7.  $daynumber=date('w', $time);
  8.  if($daynumber==0) return 6;
  9.  else return $daynumber-1;
  10. }
  11.     
  12. if(!$action) {
  13.  
  14. $today_day = date("j",mktime(date("H"),date("i"),date("s"),date("m"),date("d"),date("Y"))+$timeoffset*3600);
  15. $today_month = date("n",mktime(date("H"),date("i"),date("s"),date("m"),date("d"),date("Y"))+$timeoffset*3600);
  16. $today_year = date("Y",mktime(date("H"),date("i"),date("s"),date("m"),date("d"),date("Y"))+$timeoffset*3600);
  17. $today_monthname = get_month_name($today_month);
  18.  
  19. if(!$month || $month<1 || $month>12) $month=$today_month;
  20. if(!$year || $year<1970) $year=$today_year;
  21. $countdays=1;
  22. $monthname = get_month_name($month);
  23.  
  24. if($month==1) {
  25.  $prev_month=12;
  26.  $prev_year=$year-1;
  27.  $prev_monthname=get_month_name($prev_month);
  28. }
  29. else {
  30.  $prev_month=$month-1;
  31.  $prev_year=$year;
  32.  $prev_monthname=get_month_name($prev_month);
  33. }
  34. if($month==12) {
  35.  $next_month=1;
  36.  $next_year=$year+1;
  37.  $next_monthname=get_month_name($next_month);
  38. }
  39. else {
  40.  $next_month=$month+1;
  41.  $next_year=$year;
  42.  $next_monthname=get_month_name($next_month);
  43. }
  44.  
  45. if($monthname=="März") $where2 = "OR age_m = 'März'";
  46. $result = $db_zugriff->query("SELECT userid, username, age_d, age_y FROM bb".$n."_user_table WHERE age_m = '$monthname' $where2 ORDER BY username ASC");
  47. while($row=$db_zugriff->fetch_array($result)) $birthdaycache[$row[age_d]][]=$row;
  48.  
  49. $currentdate="$year".ifelse($month<10,"0","")."$month";
  50. $result = $db_zugriff->query("SELECT eventid, subject, eventdate, public FROM bb".$n."_events WHERE eventdate LIKE '$currentdate%' AND ((userid >= 1 AND userid = '$user_id') OR public = '1') ORDER BY public ASC, subject ASC");
  51. while($row=$db_zugriff->fetch_array($result)) $eventcache[intval(substr($row[eventdate], 6))][]=$row;
  52.  
  53. for($i=$today_year-1;$i<$today_year+4;$i++) $yearbits.="<option value=\"$i\">$i</option>\r\n";
  54.  
  55. while (checkdate($month,$countdays,$year)) $countdays++;
  56.  
  57. $day=1;
  58. $weeknumber = ceil((date('z', mktime(0,0,0,$month,$day,$year))+1)/7);
  59. while($day<$countdays) {
  60.  unset($events);
  61.  unset($week);
  62.  
  63.  $daynumber = daynumber(mktime(0,0,0,$month,$day,$year));
  64.  if($day==1) {
  65.   if($daynumber>0) $day_bits .= str_repeat("<td bgcolor=\"{pagebgcolor}\"> </td>", $daynumber);
  66.  }
  67.  
  68.  if($daynumber==0) eval ("\$week = \"".gettemplate("calender_week")."\";");
  69.  
  70.  if(count($eventcache[$day])) {
  71.   while(list($key,$event)=each($eventcache[$day])) {
  72.    if($event[public]==1) eval ("\$events .= \"".gettemplate("calender_publicevent")."\";");
  73.    else eval ("\$events .= \"".gettemplate("calender_privateevent")."\";");
  74.   }
  75.  }
  76.  
  77.  if(count($birthdaycache[$day])) {
  78.   while(list($key,$birthday)=each($birthdaycache[$day])) {
  79.    $age = $year-$birthday[age_y];
  80.    if($age<0) continue;
  81.    if($age>120) $age="";
  82.    else $age="($age)";
  83.    eval ("\$events .= \"".gettemplate("calender_birthday")."\";");
  84.   }
  85.  }
  86.  
  87.  if($month==$today_month && $year==$today_year && $day==$today_day) eval ("\$day_bits .= \"".gettemplate("calender_todaybits")."\";");
  88.  else eval ("\$day_bits .= \"".gettemplate("calender_daybits")."\";");
  89.  
  90.  if($day+1==$countdays) {
  91.   if($daynumber<6) $day_bits .= str_repeat("<td bgcolor=\"{pagebgcolor}\"> </td>", 6-$daynumber)."</tr>";
  92.   else $day_bits."</tr>";
  93.  }
  94.  elseif($daynumber==6) {
  95.   $day_bits .= "</tr><tr>";
  96.   $weeknumber++;
  97.   if($weeknumber>52) $weeknumber=1;
  98.  }
  99.  $day++;
  100. }
  101.  
  102. if($userdata[ismod]==1 || $userdata[issupermod]==1 || $userdata[canuseacp]==1) eval ("\$addpublicevent = \"".gettemplate("calender_addpublicevent")."\";");
  103. if($user_id) eval ("\$addprivateevent = \"".gettemplate("calender_addprivateevent")."\";");
  104.  
  105. eval("dooutput(\"".gettemplate("calender_view")."\");");
  106. }
  107.  
  108. if($action=="viewevent") {
  109.  $event = $db_zugriff->query_first("SELECT bb".$n."_events.*, bb".$n."_user_table.username FROM bb".$n."_events LEFT JOIN bb".$n."_user_table USING (userid) WHERE eventid='$id'");
  110.  if($event[public]==0 && $event[userid]!=$user_id) {
  111.   header("LOCATION: misc.php?action=access_error&boardid=$boardid$session");
  112.   exit();
  113.  }
  114.  if(($event[public]==1 && ($userdata[ismod]==1 || $userdata[issupermod]==1 || $userdata[canuseacp]==1)) || ($event[public]==0 && $event[userid]==$user_id)) eval ("\$editevent = \"".gettemplate("calender_editevent_btn")."\";");
  115.  
  116.  $event[subject] = prepare_topic($event[subject]);
  117.  $event[event] = editPost($event[event],$event[allowsmilies]);
  118.  $eventdate = substr($event[eventdate], 6).".".substr($event[eventdate], 4, 2).".".substr($event[eventdate], 0, 4);
  119.  
  120.  eval("dooutput(\"".gettemplate("calender_viewevent")."\");");
  121. }
  122.  
  123. if($action=="addevent") {
  124.  if(!$user_id) {
  125.   header("LOCATION: misc.php?action=access_error&boardid=$boardid$session");
  126.   exit();
  127.  }
  128.  if($type=="public" && $userdata[ismod]!=1 && $userdata[issupermod]!=1 && $userdata[canuseacp]==1) {
  129.   header("LOCATION: misc.php?action=access_error&boardid=$boardid$session");
  130.   exit();
  131.  }
  132.  if($send=="send") {
  133.   $subject = trim($subject);
  134.   $message = trim($message);
  135.   if(!$subject || !$message) eval ("\$error = \"".gettemplate("calender_error2")."\";");
  136.   elseif(!checkdate($month,$day,$year)) eval ("\$error = \"".gettemplate("calender_error1")."\";");
  137.   else {
  138.    if($parseurl==1) $message = parseURL($message);
  139.    $db_zugriff->query("INSERT INTO bb".$n."_events (eventid,userid,subject,event,eventdate,public,disable_smilies) VALUES (NULL,'$user_id','".htmlspecialchars(editPostdata($subject))."','".editPostdata($message)."','$year".ifelse($month<10,"0","")."$month".ifelse($day<10,"0","")."$day','".ifelse($type=="public","1","0")."','$disablesmilies')");
  140.    $eventid=$db_zugriff->insert_id();
  141.    header("Location: calender.php?action=viewevent&id=$eventid$session");
  142.    exit();
  143.   }
  144.  }
  145.  
  146.  if($bbcode && $u_bbcode) $bbcode_buttons = getcodebuttons();
  147.  if($smilies && $u_bbcode) $bbcode_smilies = getclickysmilies(3,$anzahl_smilies);
  148.  
  149.  if(!isset($parseurl)) $checked[0]="checked";
  150.  if($parseurl==1) $checked[0]="checked";
  151.  if($disablesmilies==1) $checked[1]="checked";
  152.  
  153.  if(!$day) $day = date("j",mktime(date("H"),date("i"),date("s"),date("m"),date("d"),date("Y"))+$timeoffset*3600);
  154.  if(!$month) $month = date("n",mktime(date("H"),date("i"),date("s"),date("m"),date("d"),date("Y"))+$timeoffset*3600);
  155.  $current_year = date("Y",mktime(date("H"),date("i"),date("s"),date("m"),date("d"),date("Y"))+$timeoffset*3600);
  156.  if(!$year) $year = $current_year;
  157.  
  158.  for($i=1;$i<32;$i++) $day_options .= "<option value=\"$i\"".ifelse($i==$day," selected","").">$i</option>\r\n";
  159.  for($i=1;$i<13;$i++) $month_options .= "<option value=\"$i\"".ifelse($i==$month," selected","").">".get_month_name($i)."</option>\r\n";
  160.  for($i=$current_year;$i<$current_year+5;$i++) $year_options .= "<option value=\"$i\"".ifelse($i==$year," selected","").">$i</option>\r\n";
  161.  
  162.  eval("dooutput(\"".gettemplate("calender_addevent")."\");");
  163. }
  164.  
  165. if($action=="editevent") {
  166.  $event = $db_zugriff->query_first("SELECT bb".$n."_events.* FROM bb".$n."_events WHERE eventid='$id'");
  167.  if(($event[public]==1 && ($userdata[ismod]==1 || $userdata[issupermod]==1 || $userdata[canuseacp]==1)) || ($event[public]==0 && $event[userid]==$user_id)) {
  168.   if($send=="send") {
  169.    if($deleteevent==1) {
  170.     $db_zugriff->query("DELETE FROM bb".$n."_events WHERE eventid = '$id'");
  171.     header("Location: calender.php$session2");
  172.     exit();
  173.    } 
  174.    $subject = trim($subject);
  175.    $message = trim($message);
  176.    if(!$subject || !$message) eval ("\$error = \"".gettemplate("calender_error2")."\";");
  177.    elseif(!checkdate($month,$day,$year)) eval ("\$error = \"".gettemplate("calender_error1")."\";");
  178.    else {
  179.     if($parseurl==1) $message = parseURL($message);
  180.     $db_zugriff->query("UPDATE bb".$n."_events SET subject = '".editPostdata($subject)."', event = '".editPostdata($message)."', eventdate = '$year".ifelse($month<10,"0","")."$month".ifelse($day<10,"0","")."$day', public = '".ifelse($type=="public","1","0")."', disable_smilies='$disablesmilies' WHERE eventid = '$id'");
  181.     header("Location: calender.php?action=viewevent&id=$id$session");
  182.     exit();
  183.    }
  184.   }
  185.   else {
  186.    $subject=editDBdata($event[subject]);
  187.    $message=editDBdata($event[event]);
  188.    $type=ifelse($event[public]==1,"public","private");
  189.   }
  190.   if($bbcode && $u_bbcode) $bbcode_buttons = getcodebuttons();
  191.   if($smilies && $u_bbcode) $bbcode_smilies = getclickysmilies(3,$anzahl_smilies);
  192.  
  193.   if(!isset($parseurl)) $checked[0]="checked";
  194.   if($parseurl==1) $checked[0]="checked";
  195.   if($disablesmilies==1) $checked[1]="checked";
  196.   
  197.   if(!$day) $day = intval(substr($event[eventdate], 6));
  198.   if(!$month) $month = intval(substr($event[eventdate], 4, 2));
  199.   $current_year = date("Y",mktime(date("H"),date("i"),date("s"),date("m"),date("d"),date("Y"))+$timeoffset*3600);
  200.   if(!$year) $year = intval(substr($event[eventdate], 0, 4));
  201.   
  202.   for($i=1;$i<32;$i++) $day_options .= "<option value=\"$i\"".ifelse($i==$day," selected","").">$i</option>\r\n";
  203.   for($i=1;$i<13;$i++) $month_options .= "<option value=\"$i\"".ifelse($i==$month," selected","").">".get_month_name($i)."</option>\r\n";
  204.   for($i=$current_year;$i<$current_year+5;$i++) $year_options .= "<option value=\"$i\"".ifelse($i==$year," selected","").">$i</option>\r\n";
  205.  
  206.   eval("dooutput(\"".gettemplate("calender_editevent")."\");");
  207.  }
  208.  else header("LOCATION: misc.php?action=access_error&boardid=$boardid$session");
  209. }
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221. ?>
  222.